<?

class Postservicio_model extends CI_Model {

    public function __construct()
	{
		$this->load->database();
	}

    function set_postServicioCampo($idAlerta, $idUsuarioCampo,$causas,$causado,$estructuras) {
        $data = array(
		'idAlerta'=>$idAlerta,
		'idUsuarioCampo'=>$idUsuarioCampo, 
		'causas'=>$causas,
		'causado'=>$causado, 
		'estructuras'=>$estructuras,
		'activo'=>'1');
		$this->db->insert('postservicio', $data);
		
		$idPostServicio = $this->get_last_post();
		return $idPostServicio;
    }
	
	function setAccion($idPostServicio,$accion){
		$data = array(
		'idPostServicio'=>$idPostServicio,
		'idAccion'=>$accion);
		$this->db->insert('accionxservicio', $data);		
	}
	
	function set_foto($idPostServicio,$file){
		$data=array(
		'activo'=>'0',
		'foto'=>$file);
		$this->db->where('idPostServicio',$idPostServicio);
		$this->db->update('postservicio',$data);
	}
	
	function get_acciones($idPostServicio){
		$this->db->select('descripcion');
		$this->db->from('accionxservicio');
		$this->db->where('accionxservicio.idPostServicio',$idPostServicio);
		$this->db->join('accion','accion.idAccion=accionxservicio.idAccion');
		$query = $this->db->get();
		return $query->result();
	}
	
	public function get_service_by_id($idServicio){
		$this->db->select("idPostServicio,postservicio.activo,causado,estructuras,causas,postservicio.foto,alerta.idAlerta,posicionX,posicionY,descripcion,idUsuario,alerta.idTipoAlerta,nombreTipoAlerta,fecha");
		$this->db->from('postservicio');
		$query = $this->db->where('idPostServicio',$idServicio);
		$this->db->join('alerta','alerta.idAlerta=postservicio.idAlerta');
		$query = $this->db->join('tipoalerta','tipoalerta.idTipoAlerta=alerta.idTipoAlerta');
		$query = $this->db->get();
		return $query->row_array();
	
	}
	
	public function get_all_actions(){
		$this->db->from('accion');
		$query = $this->db->get();
		return $query->result_array();	
	}
	
	public function get_actions_by_id($idPostServicio){
		$this->db->select("descripcion");
		$this->db->from('accion');
		$this->db->where('accionxservicio.idPostServicio',$idPostServicio);
		$this->db->join('accionxservicio','accionxservicio.idAccion=accion.idAccion');
		$query = $this->db->get();
		return $query->result_array();		
	}	
	
	public function get_active_services(){
		$this->db->select("idPostServicio,alerta.idAlerta,posicionX,posicionY,descripcion,idUsuario,alerta.idTipoAlerta,nombreTipoAlerta,fecha");
		$this->db->from('postservicio');
		$this->db->where('postservicio.activo','1');
		$this->db->join('alerta','alerta.idAlerta=postservicio.idAlerta');
		$this->db->join('tipoalerta','tipoalerta.idTipoAlerta=alerta.idTipoAlerta');
		$query = $this->db->get();
		//echo $this->db->last_query();	
		return $query->result_array();
	}
	
	public function get_close_services(){
		$this->db->select("idPostServicio,alerta.idAlerta,posicionX,posicionY,descripcion,idUsuario,alerta.idTipoAlerta,nombreTipoAlerta,fecha");
		$this->db->from('postservicio');
		$this->db->where('postservicio.activo','0');
		$this->db->join('alerta','alerta.idAlerta=postservicio.idAlerta');
		$this->db->join('tipoalerta','tipoalerta.idTipoAlerta=alerta.idTipoAlerta');
		$query = $this->db->get();
		//echo $this->db->last_query();	
		return $query->result_array();
	}
	
	public function get_last_post(){
		$this->db->flush_cache();
        $this->db->select_max('idPostServicio');
        $query = $this->db->get('postservicio');
        return $query->row(0)->idPostServicio;
    }
	
}